想抓甚麼資料
如何整理、分類
如何記錄
如何運用
拿我目前在使用的架構來說明,下面會分成六大模組協同運作,各司其職且低耦合:
┌────────────────┐
│ config.py │ (環境變數、時區、排程開關)
└───────┬────────┘
│ 注入設定
▼
┌────────────────┐
│ main.py │ ◄─── (流程指揮官 / Orchestrator)
└───────┬────────┘
並行調度 │ 調用分析與狀態存取
┌─────────────────┼─────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ fetchers.py │ │ processor.py │ │ utils.py │
│ (多來源爬蟲) │ │ (邏輯分析引擎)│ │ (視覺化/I/O) │
└──────────────┘ └───────┬──────┘ └───────┬──────┘
│ 讀取字典 │ 讀寫狀態
▼ ▼
┌──────────────┐ ┌──────────────┐
│ keywords.py │ │last_seen.json│
│ (資安知識庫) │ │ (狀態快照) │
└──────────────┘ └──────────────┘
main.py (流程指揮官 / Pipeline Orchestrator)concurrent.futures.ThreadPoolExecutor 同時啟動所有啟用的爬蟲任務,打破過去循序等待的瓶頸,執行時間由「總和 $\sum T$」大幅降至「最慢單一任務時間 $\max(T)$」。last_seen.json 載入為記憶體中的雜湊集合(Hash Set),實現毫秒級去重,並於批次內防止跨來源重複情資。processor.py (邏輯分析引擎 / Risk Engine)\b 精確比對英文縮寫,確保 rce 不會被 salesforce 誤觸發,ad 不會被 broadcast 誤觸發。evaluate_threat_score,T1 ~ T4 最高 10 分)。🔥高分警示 [目標]
⚡重大漏洞
👑必讀
🏦金融焦點
🎯關鍵設備
keywords.py (資安領域知識庫 / Domain Knowledge Base)CRITICAL_EQUIPMENT:定義防護邊界(VPN、防火牆、AD 域控、虛擬化主機、NAS)。EQUIPMENT_CRITICAL_THREATS:定義針對設備的毀滅性操作關鍵詞(RCE、身分繞過、逃逸、在野利用)。FINANCE_KEYWORDS:定義金管會、SWIFT、聯徵、ATM、核心帳務等強金融屬性詞。IMPORTANCE_WEIGHTS:劃分 Tier 1(10分)至 Tier 4(2分)的漏洞技術特徵。fetchers.py (異質資料抓取器 / Ingestion Layer)feedparser 快速解析 RSS,作為日常威脅與專家日報的即時情報源。utils.py (輔助服務與視覺化產出 / Utility & Presentation)用途:處理狀態持久化、日誌存檔與多樣化郵件報表生成。
運作原理:
視覺化郵件引擎:依據 config.py 中的 REPORT_STYLE 支援三種呈現樣式:
TABLE(傳統精緻表格,適合桌面端排查)
CARDS(現代儀表板卡片,適合重點掃描)
TIMELINE(科技串流,適合行動裝置閱讀)
標籤色碼集中管理 (get_tag_style):依情資等級自動套用高對比色票(深鮮紅、亮紅、橘黃、紫色、藍色、石板灰)。
config.py (全域組態 / Configuration)ENABLED_SOURCES)與認證密鑰。第一次參賽,相關內容有誤還請多多提醒,如果寫的不好,也可以留言討論